/**
 * 
 */
package com.ag.utils.vo;

/**
 * @title Container.java
 *
 * @author Andy
 * @email spring.h@aliyun.com
 * @version 1.0
 * @created 2016年12月3日 下午3:34:51
 */
public class KVEContainer<K, V, E> {
	
	private K key;
    
	private V value;
    
	private E ext;

	public KVEContainer(K k, V v, E e){
		this.key = k;
		this.value = v;
		this.ext = e;
	}
	
	public static <K1, V1, E1> KVEContainer<K1, V1, E1> from(K1 k, V1 v, E1 e) {
		return new KVEContainer<K1, V1, E1>(k, v, e);
	}

	/**
	 * @return the key
	 */
	public K getKey() {
		return key;
	}

	/**
	 * @param key the key to set
	 */
	public void setKey(K key) {
		this.key = key;
	}

	/**
	 * @return the value
	 */
	public V getValue() {
		return value;
	}

	/**
	 * @param value the value to set
	 */
	public void setValue(V value) {
		this.value = value;
	}

	/**
	 * @return the ext
	 */
	public E getExt() {
		return ext;
	}

	/**
	 * @param ext the ext to set
	 */
	public void setExt(E ext) {
		this.ext = ext;
	}
    
}
